﻿//*** Guidance generated code ***//
using System;
using System.Collections.Generic;
using System.Diagnostics.Contracts;
using System.Linq;
using System.Web.Mvc;
using System.Web.UI;

using ProjectBase.Core;
using ProjectBase.Core.Web;

namespace $safeprojectname$
{
    /// <summary>
    ///     Base Control HTML interface
    /// </summary>
    public interface IVisualControl
    {
        string ID { get; set; }
        VisualControlCollection Controls { get; }
        AttributeCollection Attributes { get; }
        IUrlHelper Url { get; set; }
        HtmlHelper Html { get; set; }
        string ViewDataKey { get; set; }
        ViewContext ViewContext { get; set; }

        void SetViewData(ViewDataDictionary viewData);
        void RenderControl(HtmlTextWriter writer);
        void BuildControls();
        void AsReadOnly();
    }
}